Computerized systems and methods for scheduling, and sending individualized electronic invites to, a compound meeting

ABSTRACT

Computerized systems and methods allow a user, in a single set up process, to set up multiple sub-meetings in a compound meeting and have individualized invites sent to the invited individuals. A dynamic, interactive calendar graphic can be used where the user can drag meeting time indicators for each invited individual to desired time slots. Once suitable meeting times are established, the user can cause the invites to be sent electronically to each invitee, and each invite is individualized to the meeting start and stop times for the recipient.

BACKGROUND

In business settings, there are often times where one person has to meetwith groups of one or more people in a number of meetings. One exampleis where a job candidate (a recruit) has to interview with oneinterviewer after another. In some settings, to schedule the interviews,an electronic appointment invite, specifying the time window andlocation for each interview, is emailed to each interviewer of eachgroup and to the job candidate. This process, however, islabor-intensive and time consuming because separate invites have to begenerated and emailed to each interviewer. To save this time, sometimesone appointment invite is sent to all of the interviewers and therecruit that covers the cumulative time window for all of the serialinterviews. The problem with this approach, however, is that theinterviewers' electronic calendars will show that they are busy for theentire cumulative time window for the serial interviews, when in factthey are only busy for one interview time slot in that cumulative timewindow.

SUMMARY

In one general aspect, the present invention is directed to computerizedsystems and methods through which, in a single set up process, a usercan set up multiple sub-meetings in a compound meeting (i.e., a meetingmade up of two or more sub-meetings) and have individualized electronicinvites sent (e.g., emailed or texted) to the invited individuals. Forexample, if one individual is only slated to attend one of thesub-meetings, that individual's invite only specifies the start and stoptimes (and optionally location) for that sub-meeting. On the other hand,if another individual is slated to attend back-to-back (or more) of thesub-meetings, that individual's invite can specify the start of thefirst sub-meeting and the end of the last sub-meeting as the meetingstart and stop times for the individual. In one arrangement, the presentinvention uses a dynamic, interactive calendar grid (or other graphic)where the user can drag meeting blocks (or indicators) for each invitedindividual (and optionally the meeting location(s)) to desired timeslots. Once suitable meeting times for each invited individual areestablished, the user can cause the electronic invites to be sent toeach invitee, and each invite is individualized to the meeting start andstop times for the recipient. This can alleviate the problems present inthe prior art. The user does not need to set up meeting invites for eachsub-meeting, nor have to block off times for the entire duration of thecompound meeting for all of the invitees. These and other benefits ofthe present invention will be apparent from the description below.

FIGURES

Various embodiments of the present invention are described herein by wayof example in conjunction with the following figures, wherein:

FIGS. 1 and 12 are diagrams of example computer systems according tovarious embodiments of the present invention;

FIGS. 2-10 are screen shots of various displays from an applicationthrough which a user can schedule a compound meeting according tovarious embodiments of the present invention; and

FIG. 11 is a diagram of a process flow that is executed by the computersystem of FIG. 1 or 12 according to various embodiments of the presentinvention.

DESCRIPTION

FIG. 1 is a diagram of an example computer network 10 that can used toimplement various embodiments of the present invention for sending(e.g., emailing, texting, or otherwise electronically messaging via acomputer network) individualized electronic meeting invites to differentinvitees for a series of meetings (collectively, a “compound” meeting)from a single meeting set-up process. As shown in FIG. 1, numerousclient-computing devices 12 are connected to an enterpriseemail/scheduling server system 14 via a private data network 16. Theclient-computing devices 12 may be associated with a common enterprise 8(e.g., a business, organization, institution, etc.) whose email andscheduling is handled by the email/scheduling server system 14. Theemail and scheduling server system 14 may include one or more serversthat run Microsoft Outlook for the enterprise (e.g., the servers areMicrosoft Exchange servers) or some other email/scheduling program. Theprivate data network 16 may be a computer data network comprising, forexample, an interconnection of a number of data networks (that employ,for example, the TCP/IP protocol such as LANs, WANs or a corporate areanetwork (CAN)). As shown in FIG. 1, the enterprise 8 may also include adocument library 19 for storing electronic documents and otherelectronic files of the enterprise so that users of the client-computingdevices 12 can access the files in the library 19 (if authorized).

Exemplary aspects of one of the client-computing devices 12 are shown inmore detail in FIG. 1. The client-computing devices 12 may include acentral processing unit (CPU) 20 connected to a system memory 22 and amass storage device 24 via an internal system bus 26. The system memory22 may include random access memory 30 (RAM) and read-only memory (ROM)32, which may be implemented with semiconductor integrated circuits. Themass storage device 24 may be implemented with, for example, one or morehard disk drives, optical disk drives, and/or solid-state drives. Themass storage device 24 and/or the RAM 30 can store a number of softwareprogram modules that are executed by the CPU 20. These program modulescan include an operating system (OS) 34, one or more browsers 36 (suchas Microsoft Internet Explorer, Google Chrome, Mozilla Firefox, etc.),and an email/scheduling application 38 (e.g., Microsoft Outlook). Inaddition to or in lieu of the email/scheduling application 38, users ofthe client computing devices 12 may use web-based email/schedulingapplications that are run through the browser 36, such as Gmail,Outlook.com, and Yahoo! Mail, for example. The mass storage device 24and/or the RAM 30 may also store other applications 40 executed by theCPU 20, such as productivity applications (e.g., word processing,spreadsheets, etc.).

Also as shown in FIG. 1, the enterprise 8 is in communication with ahost computer system 21 via an electronic data communication network 52(and appropriate network firewalls 54, 56). The host computer system 21comprises a web server system 15 that may include one or more networkedweb servers that host at least one web-based application 17 that a userof a client-computing device 12 can access via the network 52 and theclient computing device's browser 36. As described in more detail below,a user of one of the client-computing devices 12, using the web-basedapplication 17, can schedule—and send out individualized email invitesfor—a compound meeting, having a series of sub-meetings, where multiplepeople (or multiple groups of people) are scheduled for individualsub-meeting time slots in the compound meeting, through a single meetingset-up process. With this scheduling feature, as described in detailbelow, the user (referred to below as “the initiator” for clarity) doesnot need to set-up and schedule multiple meetings for each of themeeting groups. Nor does the initiator have to send out one invite toall of the groups that spans the time window for the entire compoundmeeting. Instead, the initiator can send out, from his/herclient-computing device 12, multiple meeting invites, eachparticularized to the time window and location of each meeting groups'particular sub-meeting time slot, through a single meeting inviteprocess.

Before describing aspects of the single meeting invite process, theremaining elements of FIG. 1 are described, as an understanding of thoseelements will facilitate the description to follow. As shown in FIG. 1,the host computer system 21 may also comprise one or more computerdatabases 50 that store, for example, data used by the web-basedapplication 17 of the web server system 15. For example, in oneimplementation of the present invention, the application 17 of the webserver 15 provides an applicant tracking platform for the enterprise 8,and the database 50 stores data about the applicants (e.g., jobcandidates or other types of applicants), among other data. The datanetwork 52 may employ the TCP/IP protocol, for example, and may compriseone or more connected computer networks that connect to the enterprise 8to the host computer system 21, such as the Internet, LANs, WANs, etc.Pertinent to aspects of the present invention, the host computer system21 may access the enterprise's email system 14 to retrieve data from theemail system 14 to be used in its compound meeting scheduling function,such as calendar information (free and busy times) for individuals andother resources (e.g., meeting rooms) associated with the enterprise. Invarious embodiments, the host data center 21 may access the data fromthe email system 14 using web services. Note that the private datanetwork 16 and the data network 52 could be considered collectively tobe one data network. The enterprise 8 and the host computer system 21may each have associated network firewalls 54, 56. In otherarrangements, as shown in FIG. 12, the web server system 15 could bewithin enterprise's network. In other arrangements, the client computingdevices 12 may download a plug-in that allows the browser 36 tointerface with the email/calendaring app 38 via an API, such as anActiveX plug-in or some other suitable plug-in or extension.

The client-computing devices 12 shown in FIG. 1 could be implementedwith desktop computers, servers, laptops, tablets, smart phones, or anyother CPU-based computing device capable of connecting the enterpriseemail/scheduling server 14 and the web server system 15. Of course, theclient-computing devices 12 may also include display screens (not shownin FIG. 1) for visually displaying information, including the graphicaluser interfaces or the web-based application 17 shown below. Theclient-computing devices 12 may also include input modalities throughwhich a user (e.g., the initiator) can interact with theclient-computing device 12, including providing the inputs to set up theappointments in the graphical user interface. The client-computingdevices 12 of the enterprise could be distributed across differentgeographic locations and the enterprise 8 could have multiple enterpriseemail/scheduling servers 14, such as one for each enterprise location.

In the description herein, the server system 15 is described as aweb-server system that provides a web-based application 17. It should berecognized that the present invention is not so limited and that inother embodiments, the server system 15 could provide another type ofapplication (in addition to or in lieu of a web-based application) thatthe user of the client computing device could access to set up thecompound meeting as described herein. The claims use the term“application server system” to encompass the web server system 15 orsuch other type of application server system. Also, in the descriptionherein, the invites are sent by email by the email server system 14,which also stores and handles calendar data for the enterprise. Itshould be recognized that the invention is not so limited and that inother embodiments, the invites could be sent by other types ofelectronic messages, such as texts, instant messages, personal messages,etc. (in addition to or in lieu of email). The claims use the term“messaging server system” to encompass all of these types of electronicmessaging. Also, the calendar information for the enterprise could beintegrated into the messaging server system or a separate calendaringserver system connected to the network 16 could store the calendarinformation for the enterprise (e.g., free and busy times forindividuals and meeting rooms).

FIGS. 2-8 are example screen shots of the graphical user interfaceprovided by the web server system 15 (and the browser 36) to theinitiator using the client computing device 12 in order to set up andinvite people to the series of meetings according to various embodimentsof the present invention. The screen shots may be part of HTML web pagesprovided by the web server 15 and displayed by the browser 36. In theexample of FIG. 2, the browser 36 of the initiator's client-computingdevice 12 is Google Chrome. Also in the example of FIG. 2, the initiator(Kyle Hogan), at the client-computing device 12, after logging into theapplication 17 hosted by the web server system 15, is setting up aseries of back-to-back job interviews (e.g., sub-meetings) forprospective job candidate (in the illustrated example, Adam Tester) withvarious members of the enterprise 8, although it should be recognizedthat the invention is not necessarily so limited and that it can be usedfor scheduling other types of meetings or in other contexts. In theexample of FIG. 2, information about the candidate (in this case, thecandidate's resume) is shown on the left side of the screen 100. Thecandidate information (e.g., resume) may be stored in the database 50 ofhost computer system 21 such that it is accessible to the web server 15.The right side of the screen can show calendar information 102 (e.g.,free and busy times in a scheduling grid) for a selected individual ofthe enterprise or other individual for which the enterpriseemail/scheduling server system 14 has such information. The web serversystem 15 can access this information via web services from the emailserver system 14 (or other calendar server system) in order to displayit. The user can search for the individual whose schedule information isshown in the schedule grid 102 via the search box 105. The web serversystem 15 could also access other calendaring applications when set upto do so, such as third party or outside calendaring applications,including Gmail, etc.

In various embodiments, the user can initiate the process of schedulingthe interviews for the prospective job candidate by clicking the“Schedule” tap 104 on the upper right side of the screen. For example,clicking the “Schedule” tab 104 can cause a compound meeting schedulingwindow 110 to open in a new browser window, as shown in FIG. 3. In thiswindow 110, the user can specify the times, place(s), and attendees ofthe sub-meetings/interviews. Because the illustrated example is for ajob recruiting application where job interviews are scheduled for thecandidate, the candidate will attend all of the interviews and his/hername consequently can appear by default in the upper left of the invite,and an icon 112 for the candidate appears in the attendee field 114.Through drop down windows 116, 118 or by other web-based user-interfacemeans, the user can specify the start and stop times for eachsub-meeting time slot in the compound meeting (including the date(s) ofthe compound meeting). Preferably the start and stop times ofsub-meeting collectively span the entire time window for the compoundmeeting.

In the subject field 120 the initiator can specify the subject for themeetings (e.g., “Interview”). This specified subject can appear in theinvite file attachment ultimately emailed to the invited attendees(sometimes referred to herein as “invitees”) as shown below. At locationfield 122, the initiator can specify the location for themeeting/interviews. In various implementations, the initiator can selecta desired location from a location drop down menu 124 that lists variouslocations associated with the enterprise that are available for themeetings (e.g., conference or meeting rooms within the enterprise), asshown in the example of FIG. 4. The web server system 15 can access adatabase of the enterprise's meeting rooms in order to populate the dropdown menu 124. That database could be stored on a server within theorganization 8, such as part of the email/scheduling server system 14.

At template field 126 the initiator can select from a drop down menu atemplate for the invite, such as “Appointment Notification” (as shown inthe example of FIG. 3) or some other pre-established templates. Theselected template can correspond to a file type that is to be emailed tothe invitees of the meeting, as described further below, such as an .icslike or other suitable electronic calendar file type.

In the attendee field 114, the initiator can select the attendees forthe various sub-meetings/interviews via the attendee drop down menu 132,as shown in FIG. 4. The attendee drop down menu 132 can be populatedwith a list of possible attendees stored in a database accessible by theweb server system 15, such as a list of authorized individuals withinthe enterprise 8 and/or the host data center 50 (particularly for jobcandidates or other types of applicants). Individualized iconscorresponding to the selected attendees can appear in the attendee field114 as they are selected by the initiator (like icon 112 in FIG. 3).Once the desired attendees are selected by the initiator, in theillustrated embodiment the initiator can select (or otherwise activate)the scheduling icon 140 to schedule the desired time slots for theselected attendees.

Activation of the scheduling icon 140 (shown in example FIGS. 3 and 4)can cause the compound meeting scheduling window 110 to transition (orslide to the left), as shown in the example of FIG. 5, to show (i) theinvited attendees and the selected room(s) in the attendee field 114 onthe left, and (ii) a scheduling grid 142 on the right that shows freeand busy times for the attendees and the selected meeting room(s) on theselected day. In this illustrated example, there are four invitedindividuals (the candidate (Adam Tester) and three interviewers(Chauncey Everett, Mary Hart and Lucille Ricardo)); and there are to bethree sub-meetings in the compound meeting. In this example, eachinterviewer is slated to meet individually with the candidate, one afterthe other, in non-overlapping sub-meetings, in the selected meetinglocation (in this example, the 3rd floor conference room). Of course, inother scenarios, multiple interviewers could simultaneously attend aninterview at a particular time slot and/or the interviews can haveoverlapping sub-meeting times. As shown in the example of FIG. 5, theinitiator could decide to remove one of the selected invitees byclicking the “X” associated with each selected invitee, or mark aparticular invitee as optional by selecting the “Appointment Optional”checkbox associated with each selected invitee.

In the example of FIG. 5, the initiator can specify the time slot thateach attendee should attend by filling in start and stop times inwindows 150, 152 associated with each attendee or the user caninteractively drag graphical meeting time blocks/indicators 154 in thescheduling grid to the desired time slot for each attendee. Forinstance, using the example of FIG. 5, the initiator could (i) drag theright-hand edge of Adam Tester's meeting time block 154 to 5:30 pm tospecify that the meeting, at least as to him, ends at 5:30 pm; and (ii)drag the left-hand edge of Adam Tester's meeting time block 154 to 2:00pm to specify that the meeting, at least as to him, starts at 2:00 pm.The initiator could drag the time blocks/indicators 154, for example, byclicking on them in the graphical user interface with their mouse orother input device, which may allow the initiator to adjust the lengthof the time block/indicator 154 by dragging the edges left or right asthe case may be. The initiator could similarly specify the start andstop times for each of the other attendees. As such, the height of eachmeeting time block 154 generally corresponds to the row of the gridassociated with each attendee. Setting the sub-meeting times for all ofthe attendees in such an interactive, dynamic way on the scheduling gridmakes it easier for the initiator to visualize whether the meeting timesare acceptable and give the initiator enhanced flexibility in settingthe meeting times. For example, the initiator could visualize severaldifferent meeting schedule scenarios in this manner before selecting thefinal, desired schedule. The initiator can also set the start and stopmeeting times for the meeting location(s) in the same interactive mannerwith the dynamic scheduling grid.

The phrase “meeting elements” is used herein to include both the meetingattendees and the meeting location(s), so in this example the meetingelements are Adam Tester, Chauncey Everett, Mary Hart, Lucille Ricardoand the 3rd floor conference room. In this example, because thecandidate is being interviewed by each of the interviewers individuallyand one after the other, the candidate's start and stop times (for thecompound meetings) are 2:00 pm to 5:30 pm and the meeting room is alsoscheduled for the entirety of that time. The time slots for the threeinterviewers cover that entire compound meeting time window (i.e., 2:00pm to 5:30 pm) collectively. To avoid conflicts with already-scheduledappointments of the invitees (indicated by the “busy” in the schedulinggrid 142) in this example, Chauncey Everett is scheduled for 3:00 pm to4:30 pm; Mary Hart is scheduled for 2:00 pm to 3:00 pm; and LucilleRicardo is scheduled for 4:30 pm to 5:30 pm. In this example none of thesub-meetings overlap, but in other scenarios the initiator couldschedule the sub-meetings to overlap for time periods, as schedulespermit. The web server 15 can access the email/scheduling server system14 to retrieve the invitees' free and busy times in order to generatethe dynamic scheduling grid 142.

In one embodiment, at least one of the meeting elements has to bescheduled for the entirety of the compound meeting. That meeting elementcould be either the room/location and/or one of the attendees. In thisexample, since the web-based application 17 is a job candidaterecruiting platform, the job candidate (Adam Tester) is by default themeeting element whose meeting time spans the entire time window of thecompound meeting. To enforce this requirement, in one embodiment, if theuser drags a meeting indicator 154 for an attendee outside of the timeslot for the meeting element that is scheduled for the entire timewindow, the corresponding meeting indicator 154 for the meeting elementthat is scheduled for the entire time window will also expand to matchthe revised meeting time. For instance, in the example of FIG. 5, if theuser dragged the right-edge of Lucille Ricardo′ meeting indicator 154 to6:00 pm, the right-edge of the meeting indicator 154 for Adam Testerwould also automatically change to be at 6:00 pm. Similarly, if the usertyped 6:00 pm in the meeting end-time field 152 for Lucille Ricardo, themeeting end-time field 152 for Adam Tester would automatically change to6:00 pm so that he is scheduled for the entire compound meeting. Inother arrangement, the user could select another meeting element to bescheduled for the entire compound meeting.

Once the initiator determines the desired meeting times, the initiatorcan select (or otherwise activate) the “Send” button 160 to cause theinvites to be sent via email to each of the selected attendees at theirspecified email addresses(es), and the emails can include an attachmentwith the meeting data that is the file type associated with the templatespecified at template field 126 (see FIG. 2). The emails may be sentfrom the enterprise's email/scheduling server system 14, or a web-basedemail application if used by the user, which in either case forwards theemails to the email accounts of the invitees at their specified emailaddress(es). The invite file attachment can be opened from theattendees' email program and added to their electronic calendar. Anexample invite file 200 is shown in FIG. 6. The invite 200 may specifythe subject 202 that the initiator specified in the “Subject” field 120when setting up the meeting (see FIG. 2). The invite also specifies themeeting time slot 204 and the meeting location 206, as specified by theinitiator when setting up the meetings. The example of FIG. 6 shows thecandidate's meeting invite, so it for 2:00 pm to 5:30 pm, as specifiedby the initiator. The invites for the other attendees would show theirparticular sub-meeting time slot (e.g., in this example, ChaunceyEverett for 3:00 pm to 4:30 pm, Mary Hart for 2:00 pm to 3:00 pm, andLucille Ricardo for 4:30 pm to 5:30 pm). Thus, in this example, separateinvites are sent to the four different attendees. The recipients of theinvites (e.g., the attendees) can accept, tentatively accept, or rejectthe invite by clicking on the “Yes,” “Maybe,” or “No” buttons 210, 212,214 respectively in the invite. When the recipient selects an invite,confirmation may be sent to the initiator and/or to the web serversystem 15 for tracking. The enterprise email/schedule server system 14may also update and track the scheduling information for the attendeesand the meeting location, i.e., updating the attendees' and the meetingroom's free and busy times to mark the meeting time slot specified inthe invite as busy (or tentative if the recipient tentatively acceptsit) at the appointed time slots so that the attendees are notdouble-booked in scheduling other meetings on the date in question.

In Microsoft Outlook 2010 and Goggle Calendar, to set up theabove-described interview schedule, the initiator would have to either:(1) set up three separate meetings—one for Tester and Everett from 3:00pm to 4:30 pm, one for Tester and Hart from 2:00 pm to 3:00 pm, and onefor Tester and Ricardo from 4:30 pm to 5:30; or (2) set up one meetingfor all of the attendees that spans the entire time window from 2:00 pmto 5:30 pm. Option (1) is time consuming for the initiator becausehe/she has to set up three meetings rather than one and results in anincreased number of invites being emailed (e.g., in this example, Testerwould be emailed three different meeting invites), which increasesnetwork activity and can be confusing for the recipients (Tester mightthink that later invites are updates to prior updates, rather thaninvites to additional meetings). Option (2) is not ideal either becauseall of the attendees will be indicated as busy by the enterpriseemail/scheduling server system 14 for the entire time from 2:00 pm to5:30 pm, even though they are not all busy that entire time, which mayimpair the scheduling of other meetings involving those attendees. Onthe other hand, various embodiments of the present invention canalleviate these drawbacks in the prior art through the above-describedsingle set-up process, where the initiator can set up, at one time, acompound meeting with multiple sub-meetings, with each resulting meetinginvite particularized to the recipient's specified sub-meeting timeslot(s). That decreases network traffic, saves the initiator time, andis less confusing for the recipients.

In various embodiments, the initiator can add files as attachments tothe invite (e.g., pdf files, word documents, spreadsheets, image files,etc.). In the example of FIG. 3, the initiator can click the “AddAttachments” icon 250 to add files stored on the initiator'sclient-computing device 12. In one implementation, attachments added tothe invites in such a manner are included in the invites emailed to eachof the attendees. When that is not desirable, such as when one or moreof the attendees should not be in receipt of certain files, theinitiator (or one of the meeting attendees could add attachments to themeeting invites for selected attendees after the meeting invites aresent. That is, for example, after the meeting invites are sent (e.g., byclicking the “Send” button 160 in FIG. 5), the initiator (or other user)could search for the desired attendee using the search box 104 (see FIG.2), open the scheduling grid 102 for that attendee (see FIG. 2), findand click on the desired meeting notification 200 (see FIG. 6) to openthe invite up, and add an attachment via the attachment icon 252 in themeeting notification 200, for example. The recipient of the invite couldalso add his/her own attachments in this manner.

In another embodiment, the initiator could specify particularattachments for particular invitees when setting up the meeting. Forexample, as shown in the example of FIG. 7, the meeting set up window100 could have an “Add Attachments” icon 270 associated with each of theselected invitees. By clicking on the “Add Attachments” icon 270 for aparticular invitee, the initiator can add one or more files from theclient-computing device 12 that are included only in the meetinginvitation for that selected invitee. If multiple attendees, but notall, are to receive a particular attachment file(s), the initiator wouldhave to individually add the attachment file(s) for each such invitee.

In another embodiment, when the initiator clicks the “Add Attachments”icon 250 (see FIG. 3), an attachment window 350 may open as shown in theexample of FIG. 8. From the window 350, the initiator can select thedesired attachments for the invites. The list of possible files 352 maybe constituted from the document library 19 of the enterprise 8 and/orthe initiator's client computing device 12. The initiator could searchfor desired files by name by typing the file name (or a portion thereof)in the search box 354 and filter files by category by selecting adesired category of files from the file category selection drop-downmenu 356. Once the initiator selects the desired attachments, theinitiator can activate the “Upload” button 358 to upload the selectedattachments.

Once the selected attachments are uploaded, they can be listed at thebottom of the compound meeting scheduling window 110 in an attachmentfield 360, as shown in FIG. 9. In this example, four attachments wereselected (and the job candidate in this example is Annette Fitzpatrick,who is only interviewing with Chauncey Everett and Mary Hart). Invarious embodiments, next to each selected attachment is a drop downwindow 362 where the initiator can select the desired recipients for thecorresponding attachment. As shown in the example of FIG. 10, in onearrangement, the available attachment distribution options are: (1)everyone (e.g., all of the selected invitees); (2) everyone except aparticular person(s), such as the job candidate (in the illustratedexample, this option is indicated by “Exclude Annette Fitzpatrick”); and(3) the particular person(s) excluded in option (2) (e.g., AnnetteFitzpatrick in this example). Option (2) might be preferred when theattachment is confidential to the enterprise and should not be sharedwith somebody external to the enterprise (e.g., a job candidate). Option(3) might be preferred when the attachment is tailored for somebodyexternal to the enterprise (e.g., driving directions to the location ofthe job interviews). When the initiator selects the “Send” button 160,the invites are sent to the selected invitees, who receive theattachments as specified by the initiator in the attachment selectionfield 360. So in the example of FIG. 9, only Chauncey Everett and MaryHart could receive Annette Fitzpatrick's resume as an attachment, andall of the invitees would receive the other three attachments.

Returning to FIGS. 3-4, the initiator may also input a category for themeeting category field 280; specify the time for reminders about themeeting in reminder field 282 (which the recipient of the invite canchange if desired); and input variables for the meeting in variablefield 284. The available variable options that the initiator can selectmay be tailored for the application 17 and the enterprise. For example,in the case where the application 17 is a job candidate recruitingplatform, the variable may relate to indicating that one of the inviteesis the job candidate and that he/she is interviewing for a particularposition. Also, in various embodiments, the compound meeting schedulingwindow could comprise a field where the user could schedule the meetingor a recurring compound meeting (e.g., daily, weekly, monthly, etc.) fora specified time period or number of recurrences.

FIG. 11 is a flow chart of a process flow that can be performed by thecomputer system 10 of FIG. 1 according to various embodiments. At step300, while accessing the application 17 via the initiator's browser 36(see FIG. 1), the initiator can click on otherwise activate the“Schedule” tab 104 (or other user control) that initiates the process ofsetting up and sending out the invites), as shown in the example of FIG.3. At step 302, the initiator can specify the details for the meeting asshown in the example of FIGS. 3-4, including specifying the subject ofthe meetings, the attendees, the location(s) of the meetings, etc. Atstep 304, the initiator can specify the time windows for each of thesub-meetings for the “meeting elements,” e.g., the invitees and thelocation(s), such as by using the dynamic, web-based, graphicalscheduling grid shown in the example of FIG. 5. In various embodiments,the meeting times are set relative to the time zone of the meetinglocation. If no meeting location is specified (e.g., for ateleconference or video conference), the time zone of the initiator canbe used. The email/calendaring server system 14 can translate themeeting times to the appropriate time zones for the invited individualsin different time zones depending, for example, on the configuration ofthe recipient's computer (time zone setting, daylight saving setting,etc.) At step 306, the initiator can add the desired attachments asdescribed above in connection with FIGS. 8-10. At step 308, once theinitiator has set the desired meeting details the initiator can click orotherwise activate the send button 140, to cause the email invites to besent to the desired invitees at step 310. At step 312, the invitees canopen the invite attachments to their email to accept or reject themeeting. In other options, as described above, instead of attachingattachments at step 306, the initiator (or some other user) can adddocuments relevant to the meeting for a particular invitee by openingthat invitee's calendar view and clicking on the invite to add theattachments, as shown in example of FIG. 6.

In one general aspect, therefore, the present invention is directed to acomputer system 10 comprising: an application (e.g., web) server system15 that hosts an application 17 (e.g., a web-based application); amessaging (e.g., email) server system 14 in communication with theapplication server system 15; and a client computing device 12 incommunication with the application server system 15 via an electronicdata communication network 16, 52. The client computing device 12 canaccess the application 17 hosted by the application server system 15 viaa browser 36 of the client computing device 12. The client computerdevice 12 also receives inputs from a user of the client-computingdevice 12, via the application 17, to schedule a compound meeting thatcomprises a series of two or more sub-meetings (e.g., the jobcandidate's individual interviews with the interviewers). Eachsub-meeting can be scheduled to include at least two differentindividuals (e.g., the candidate and one or more interviewers). Also, atleast one sub-meeting has a non-identical set of invited individuals(e.g., a least one of the sub-meetings has a different individual).Collectively, therefore, the compound meeting has three or more invitedindividuals. For example, in the example described above, the candidate(Adam Tester) had separate sub-meetings with Mary Hart, Chauncey Everettand Lucille Ricardo. In this example, each of the three sub-meetings hada set of individuals that was not identical to the set at any othersub-meeting, i.e., each sub-meeting had a different person, and thereare four total invited individuals.

The compound meeting has a compound meeting start time and a compoundmeeting stop time. In the example above, the compound meeting start timewas 2:00 pm and the compound meeting stop time was 5:00 pm. Each of thetwo or more sub-meetings has a sub-meeting start time and sub-meetingstop time. For example, Tester's and Hart's sub-meeting has asub-meeting start time of 2:00 pm and a sub-meeting stop time of 3:00pm, etc. The sub-meetings can be overlapping or non-overlapping. Also,the compound meeting has a plurality of meeting elements, which compriseat least (1) the three invited individuals (the example above has fourinvited individuals—Tester, Everett, Hart and Ricardo) and (2) themeeting location(s) for the compound meeting (3rd floor conference roomin the example above).

The user of the client computing device 12 schedules the compoundmeeting by at least: (i) opening a compound meeting scheduling window110 in the browser 36 in response to a command from a user of the clientcomputing device to schedule the compound meeting (e.g., the scheduletab 104 in FIG. 2); (ii) receiving a selection of the three or moreinvited individuals to receive invites to attend the compound meeting inresponse to one or more invitee inputs from the user of the clientcomputing device that are specified via the compound meeting schedulingwindow (e.g., the attendee fields 114, 132 in FIGS. 3-4); (iii)receiving a selection of the at least one meeting location for thecompound meeting in response to one or more location inputs from theuser of the client computing device that are specified via the compoundmeeting scheduling window (e.g., the location fields 122, 124 in FIG.3); and (iv) receiving start and stop times for each invited individual(and meeting location if one is selected) for the compound meeting fromthe user of the client computing device that are specified via thecompound meeting scheduling window (e.g., the graphical meeting timeblocks/indicators 154 in FIG. 5). The received start and stop times forone of the invited individuals (a “first” invited individual) maycoincide with the compound meeting start time and the compound meetingstop time, respectively. In the example above, the start and stop timesfor both Adam Tester coincide with the compound meeting start and stoptimes. In addition, the received start and stop times for a secondinvited individual may coincide with the sub-meeting start time and thesub-meeting stop time, respectively, of a first of the two or moresub-meetings. For example, Mary Hart's start and stop times coincidewith the start and stop times for the first sub-meeting (2 pm to 3 pm).Further, the received start and stop time for a third invited individualmay coincide with the sub-meeting start time and the sub-meeting stoptimes, respectively, of a second of the two or more sub-meetings. Forexample, Chauncey Everett's start and stop times coincide with the startand stop times of the second sub-meeting (3:00 pm to 4:30 pm). Inaddition, in the example, Lucille Ricardo's start and stop timescoincide with the start and stop time of the third sub-meeting (4:30 pmto 5:30 pm). Once the compound meeting is satisfactorily set up, theemail server system 14 may email (or otherwise send) the electronicinvites for the compound meeting to each of the invited individuals(here, Tester, Everett, Hart and Ricardo) in response to a command fromthe user of the client computing device to send the invites (e.g., the“Send” button 160 in FIG. 5). As shown in the example of FIG. 6, eachemailed invite 200 may specify the start and stop times for the invitedindividual to which the emailed invite is addressed.

In various implementations, each electronic invite can include acalendar file attachment (e.g., an .ics filed) specifying the location,start time and stop time for the invited individual to which the emailedinvite is addressed. Also, the computer system may further comprise aremote host data center 50 in communication with the web server system15 via the electronic data communication network 52. The remote hostdata center may store data about at least one of the invited individualsthat is retrieved by the web server system 15 and displayed in theweb-based application 17 in the browser 36 of the client-computingdevice 12 when requested by the user of the client-computing device 12.The web-based application may include, for example, an applicanttracking platform and the invited individuals that the remote datacenter 50 stores data about is an application for a position (e.g., ajob candidate). The compound meeting scheduling window 110 may comprisea graphical user interface 142 that graphically displays a schedulinggraphic in which the user of the client-computing device specifies thestart and stop times for the meeting elements of the compound meeting.In such an arrangement, the scheduling graphic may include a grid thatcomprises a meeting time indicator 154 for each of the meeting elements.The left edge of the meeting time indicator 154 can indicate the starttime for the meeting element and the right edge may indicate the stoptime for the meeting element. That way, the user of the client computingdevice can specify the start and stop times for each meeting element bypositioning the left edge of the meeting indicator in the schedulinggrid for each meeting element at a desired start time and by positioningthe right edge of the meeting indicator in the scheduling grid for eachmeeting element at a desired stop time. Also, each invite sent to theinvited individuals by the email server system (or other type ofmessaging server system) may specify the start and stop times for theinvited individual coinciding with the start and stop time specified bythe user for that individual by the left and right edges of the meetingindicator for the individual. The scheduling grid may also show one ormore already-scheduled meetings for the invited individuals (see FIG. 5,for example). The web server system 15 may receive the data about thealready-scheduled meetings for the invited individuals from the emailserver system 14 or other calendaring server system.

In general, it will be apparent to one of ordinary skill in the art thatat least some of the embodiments described herein may be implemented inmany different embodiments of software, firmware, and/or hardware. Thesoftware and firmware code may be executed by a processor or any othersimilar computing device. The software code or specialized controlhardware that may be used to implement embodiments is not limiting. Forexample, embodiments described herein may be implemented in computersoftware using any suitable computer software language type, using, forexample, conventional or object-oriented techniques. Such software maybe stored on any type of suitable computer-readable medium or media,such as, for example, a magnetic or optical storage medium. Theoperation and behavior of the embodiments may be described withoutspecific reference to specific software code or specialized hardwarecomponents. Moreover, the processes associated with the presentembodiments may be executed by programmable equipment, such as computersor computer systems and/or processors. Software that may causeprogrammable equipment to execute processes may be stored in any storagedevice, such as, for example, a computer system (nonvolatile) memory, anoptical disk, magnetic tape, or magnetic disk. Furthermore, at leastsome of the processes may be programmed when the computer system ismanufactured or stored on various types of computer-readable media.

It can also be appreciated that certain process aspects described hereinmay be performed using instructions stored on a computer-readable mediumor media that direct a computer system to perform the process steps. Acomputer-readable medium may include, for example, memory devices suchas diskettes, compact discs (CDs), digital versatile discs (DVDs),optical disk drives, SSDs or hard disk drives. A computer-readablemedium may also include memory storage that is physical, virtual,permanent, temporary, semipermanent, and/or semi temporary. A“computer,” “computer system,” “host,” “server,” or “processor” may be,for example and without limitation, a processor, microcomputer,minicomputer, server, mainframe, laptop, personal data assistant (PDA),wireless e-mail device, cellular phone, pager, processor, fax machine,scanner, or any other programmable device configured to transmit and/orreceive data over a network. Computer systems and computer-based devicesdisclosed herein may include memory for storing certain software modulesused in obtaining, processing, and communicating information. It can beappreciated that such memory may be internal or external with respect tooperation of the disclosed embodiments. The memory may also include anymeans for storing software, including a hard disk, an optical disk,floppy disk, ROM (read only memory), RAM (random access memory), PROM(programmable ROM), EEPROM (electrically erasable PROM) and/or othercomputer-readable media. Further, the various databases described hereinmay be implemented using, for example, disk storage systems and/orin-memory databases, such as the SAP HANA in-memory database system.

In various embodiments disclosed herein, a single component may bereplaced by multiple components and multiple components may be replacedby a single component to perform a given function or functions. Exceptwhere such substitution would not be operative, such substitution iswithin the intended scope of the embodiments. Any servers describedherein, for example, may be replaced by a “server farm,” cloud computingenvironment, or other grouping of networked servers (such as serverblades) that are located and configured for cooperative functions. Itcan be appreciated that a server farm or cloud computing environment mayserve to distribute workload between/among individual components of thefarm or cloud, as the case may be, and may expedite computing processesby harnessing the collective and cooperative power of multiple servers.Such server farms or clouds may employ load-balancing software thataccomplishes tasks such as, for example, tracking demand for processingpower from different machines, prioritizing and scheduling tasks basedon network demand and/or providing backup contingency in the event ofcomponent failure or reduction in operability.

The computer systems may comprise one or more processors incommunication with memory (e.g., RAM or ROM) via one or more data buses.The data buses may carry electrical signals between the processor(s) andthe memory. The processor and the memory may comprise electricalcircuits that conduct electrical current. Charge states of variouscomponents of the circuits, such as solid state transistors of theprocessor(s) and/or memory circuit(s), may change during operation ofthe circuits. The amount of data elements transferred in a given periodcould be in the millions given the size of the markets and theapplicability of this invention.

Some of the figures may include a flow diagram. Although such figuresmay include a particular logic flow, it can be appreciated that thelogic flow merely provides an exemplary implementation of the generalfunctionality. Further, the logic flow does not necessarily have to beexecuted in the order presented unless otherwise indicated. In addition,the logic flow may be implemented by a hardware element, a softwareelement executed by a computer, a firmware element embedded in hardware,or any combination thereof.

While various embodiments have been described herein, it should beapparent that various modifications, alterations, and adaptations tothose embodiments might occur to persons skilled in the art withattainment of at least some of the advantages. The disclosed embodimentsare therefore intended to include all such modifications, alterations,and adaptations without departing from the scope of the embodiments asset forth herein.

What is claimed is:
 1. A computer system comprising: an applicationserver system that hosts an application; a messaging server system incommunication with the application server system; a client-computingdevice in communication with the application server system via anelectronic data communication network, wherein the client-computingdevice is for: accessing the application hosted by the applicationserver system with the client computing device; receiving inputs from auser of the client computing device, via the application, to schedule acompound meeting that comprises two or more sub-meetings, wherein: eachsub-meeting is scheduled to include two or more invited individuals; atleast one sub-meeting has a non-identical set of invited individuals,such that collectively the compound meeting has three or more invitedindividuals, with each of the invited individuals being invited to atleast one of the sub-meetings; the compound meeting has a compoundmeeting start time and a compound meeting stop time; each of the two ormore sub-meetings has a sub-meeting start time and sub-meeting stoptime; the compound meeting is scheduled by at least: the clientcomputing device opening a compound meeting scheduling window on theclient-computing device in response to a command from a user of theclient-computing device to schedule the compound meeting; wherein thecompound meeting scheduling window comprises a graphical user interfacethat graphically displays a scheduling grid displaying times, thescheduling grid including a meeting indicator manipulable by a user ofthe client-computing device to specify the start and stop times of eachsub-meeting for each of the invited individuals; the client-computingdevice receiving a selection of the three or more invited individuals toreceive invites to attend the compound meeting in response to one ormore invitee inputs from the user of the client-computing device thatare specified via the compound meeting scheduling window; and receivingstart and stop times for each of the three or more invited individualsfrom the user of the client-computing device that are specified via thecompound meeting scheduling window, wherein: the received start and stoptimes for a first invited individual coincides with the compound meetingstart time and the compound meeting stop time respectively; the receivedstart and stop times for a second invited individual coincides with thesub-meeting start time and the sub-meeting stop time respectively of afirst sub-meeting; and the received start and stop time for a thirdinvited individual coincides with the sub-meeting start time and thesub-meeting stop time respectively of a second sub-meetings; and themessaging server system is for sending electronic invites for thecompound meeting to each of the three or more invited individuals inresponse to a command from the user of the client-computing device tosend the invites, wherein each sent invite specifies the meeting startand stop times specified via the graphical user interface for theinvited individual to which the invite is addressed.
 2. The computersystem of claim 1, wherein each sent invite comprises a calendar fileattachment specifying the start time and stop time for the invitedindividual to which the invite is addressed.
 3. The computer system ofclaim 1, further comprising a remote host data center in communicationwith the application server system via the electronic data communicationnetwork, wherein the remote host data center stores data about at leastone of the invited individuals that is retrieved by the applicationserver system and displayed in the application by the client-computingdevice when requested by the user of the client-computing device.
 4. Thecomputer system of claim 3, wherein the application server provides anapplicant tracking platform and the first invited individual that theremote data center stores data about is an applicant for a position. 5.The computer system of claim 1, wherein: a left edge of the meetingindicator indicates the start time for the corresponding invitedindividual and a right edge indicates the stop time for thecorresponding invited individual, such that the user of theclient-computing device specifies the start and stop times for eachinvited individual by positioning the left edge of the meeting indicatorin the scheduling grid corresponding to each invited individual at adesired start time and by positioning the right edge of the meetingindicator in the scheduling grid corresponding to each invitedindividual at a desired stop time; and each invite sent to the invitedindividuals specifies the start and stop times for the invitedindividual coinciding with the start and stop times specified by theuser for the invited individual by the left and right edges of themeeting indicator corresponding to the invited individual.
 6. Thecomputer system of claim 5, wherein: the compound meeting schedulingwindow includes a meeting location field where the user can select oneor more meeting locations for the compound meeting; the scheduling gridincludes a meeting indicator for each of the one or more meetinglocations; and each invite sent to the invited individuals specifies themeeting location.
 7. The computer system of claim 5, wherein thescheduling grid shows one or more already-scheduled meetings for theinvited individuals, wherein the application server system receives dataabout the already-scheduled meetings for the invited individuals from acalendar server system.
 8. The computer system of claim 1, wherein: theclient-computing device is further for receiving from the user via thecompound meeting scheduling window a command to add an attachment to theinvites; and the messaging server system is for including the attachmentin the invites sent to the invited individuals.
 9. The computer systemof claim 8, wherein the compound meeting scheduling window comprises anattachment field that permits the user to: select one or moreattachments to be sent with the invites; and specify which of the one ormore selected attachments is to be sent to the invited individuals inthe invites.
 10. The computer system of claim 1, wherein: theapplication server system comprises a web server system; the applicationcomprises a web-based application; and the client computing devicecomprises a browser for accessing the web-based application.
 11. Thecomputer system of claim 10, wherein the messaging server systemcomprises an email server system.
 12. The computer system of claim 11,further comprising a calendar server system stores meeting informationfor at least one of the invited individuals and tracks responses to theinvites from the invited individuals.
 13. A computer-implemented methodcomprising: hosting, by an application server system, an application;scheduling, by a user of a client-computing device, a compound meetingthrough the application hosted by the application server system that isin communication with the client-computing device via an electronic datacommunication network, wherein: the compound meeting comprises two ormore sub-meetings; each sub-meeting is scheduled to include two or moreinvited individuals; at least one sub-meeting has a non-identical set ofinvited individuals, such that collectively the compound meeting hasthree or more invited individuals, with each of the invited individualsbeing invited to at least one of the sub-meetings; the compound meetinghas a compound meeting start time and a compound meeting stop time; eachof the two or more sub-meetings has a sub-meeting start time andsub-meeting stop time; and scheduling the meeting comprises: opening acompound meeting scheduling window on the client-computer device inresponse to a command from the user of the client-computing device toschedule the compound meeting; wherein the compound meeting schedulingwindow comprises a graphical user interface that graphically displays ascheduling grid displaying times, the scheduling grid including ameeting indicator manipulable by a user of the client-computing deviceto specify the start and stop times of each sub-meeting for each of theinvited individuals; receiving a selection of the three or more invitedindividuals to receive invites to attend the compound meeting inresponse to one or more invitee inputs from the user of theclient-computing device that are specified via the compound meetingscheduling window; and receiving start and stop times for each of thethree or more invited individuals from the user of the client-computingdevice that are specified via the compound meeting scheduling window,wherein: the received start and stop times for a first invitedindividual coincides with the compound meeting start time and thecompound meeting stop time respectively; the received start and stoptimes for a second invited individual coincides with the sub-meetingstart time and the sub-meeting stop time respectively of a first of thetwo or more sub-meetings; and the received start and stop time for athird invited individual coincides with the sub-meeting start time andthe sub-meeting stop time respectively of a second of the two or moresub-meetings; and sending, by an electronic messaging server system thatis communication with the application server system, electronic invitesfor the compound meeting to each of the invited individuals in responseto a command from the user of the client-computing device to send theinvites, wherein each electronic invite specifies the meeting start andstop times specified via the graphical user interface for the invitedindividual to which the invite is addressed.
 14. The method of claim 13,wherein each sent invite comprises a calendar file attachment specifyingthe start time and stop time for the invited individual to which theinvite is addressed.
 15. The method of claim 13, further comprisingstoring, by a remote host data center that is in communication with theapplication server system via the electronic data communication network,data about at least one of the invited individuals that is retrieved bythe application server system and displayed in the application on theclient-computing device when requested by the user of theclient-computing device.
 16. The method of claim 15, wherein theapplication server provides an applicant tracking platform and the atleast one of the invited individuals that the remote data center storesdata about is an applicant for a position.
 17. The method of claim 13,wherein: a left edge of the meeting indicator indicates the start timefor the corresponding invited individual and a right edge indicates thestop time for the corresponding invited individual, such that the userof the client computing device specifies the start and stop times foreach invited individual by positioning the left edge of the meetingindicator in the scheduling grid for each invited individual at adesired start time and by positioning the right edge of the meetingindicator in the scheduling grid for each invited individual at adesired stop time; and each invite sent to the invited individualsspecifies the start and stop times for the invited individual coincidingwith the start and stop time specified by the user for the invitedindividual by the left and right edges of the meeting indicatorcorresponding to the invited individual.
 18. The method of claim 17,wherein: the compound meeting scheduling window includes a meetinglocation field where the user can select one or more meeting locationsfor the compound meeting; the scheduling grid includes a meetingindicator for each of the one or more meeting locations; and each invitesent to the invited individuals specifies the meeting location.
 19. Themethod of claim 18, wherein the scheduling grid shows one or morealready-scheduled meetings for the invited individuals, wherein theapplication system receives data about the already-scheduled meetingsfor the invited individuals from a calendaring server system.
 20. Themethod of claim 13, further comprising: receiving, by theclient-computing device from the user via the compound meetingscheduling window, a command to add an attachment to the electronicinvites; and including, by the messaging server system, the attachmentin the invites sent to the invited individuals.
 21. The method of claim13, wherein the compound meeting scheduling window comprises anattachment field that permits the user to: select one or moreattachments to be sent with the invites; and specify which of the one ormore selected attachments is to be sent to the invited individuals inthe invites.
 22. The method of claim 13, further comprising, aftersending the invites: viewing calendar information, via the applicationat the client computing device, for a first one of the invitedindividuals; opening a calendar file attachment for the first one of theinvited individuals; and adding an attachment to the calendar fileattachment for the first one of the invited individuals.
 23. The methodof claim 13, further comprising tracking, by a calendaring serversystem, responses to the invites from the three or more invitedindividuals.
 24. The method of claim 13, wherein: the application serversystem comprises a web server system; the application comprises aweb-based application; and the client computing device comprises abrowser for accessing the web-based application.
 25. The method of claim24, wherein the messaging server system comprises an email server systemthat emails the invited to the invited individuals.